/*
 * @Author: zhaoxiangyu@
 * @Date: 2021-11-05 14:40:29
 * @LastEditors: 647355931@qq.com
 * @LastEditTime: 2021-11-05 17:41:31
 * @Description: file content
 */

import Dep from "./dep.js"

// cb回调函数 负责更新dom节点的
export default function Watcher(cb){
    this._cb = cb
    // 赋值Dep.target
    console.log('watch this ===> ', this);
    
    Dep.target = this
    // 执行回调函数时 会有一些 this.xxx的读取操作 ，从而触发getter进行收集
    // console.log('this._cb===<>', this._cb)
    this._cb()
    // 收集后将target置空 防止重复收集
    Dep.target = null
}


Watcher.prototype.update = function(){
    // 更新dom方法
    this._cb()
}